package com.dao;

import com.entity.Notice;

import org.apache.ibatis.annotations.Param;

import java.util.List;

/**  */
public interface NoticeDao {

  /**
   * 插入一条通知
   *
   * @param userId 用户编号
   * @param kind 通知种类
   * @param template 模板
   * @param status 查看状态
   * @return 1/0
   */
  int insertNotice(
      @Param("userId") String userId,
      @Param("kind") int kind,
      @Param("template") String template,
      @Param("status") int status,
      @Param("param0") Object param0,
      @Param("param1") Object param1,
      @Param("param2") Object param2,
      @Param("param3") Object param3,
      @Param("param4") Object param4,
      @Param("param5") Object param5,
      @Param("param6") Object param6,
      @Param("param7") Object param7,
      @Param("param8") Object param8,
      @Param("param9") Object param9);

  /**
   * 获取用户的通知
   *
   * @param userId 用户编号
   * @param status 通知状态，1为已读，0为未读,为null表示全部
   * @param start 开始索引
   * @param num 数量
   * @return 按时间逆序排序的通知列表
   */
  List<Notice> selectUserNotice(
      @Param("userId") String userId,
      @Param("status") Integer status,
      @Param("start") Integer start,
      @Param("num") Integer num);
}
